function submitProductsRequest() { 
	  var idX=dwr.util.getValue("formClientID"); 
	  var typeX=dwr.util.getValue("formProductType"); 
	 
	  var parametersX={clientID:idX,productType:typeX}; 
	 
	  EasyService.getProducts(parametersX,showProducts); 
 
 } 
 
function showProducts(responseX) { 
 
	// borro filas excepto el patron, delete rows except pattern row 
    dwr.util.removeAllRows("myTable", { filter:function(tr) { return (tr.id != "myPattern");}}); 
 
    if (responseX.errorCode!=0){ 
      alert('Error: '+responseX.errorDescription); 
      return; 
    }; 
    var productsX=responseX.products; 
    var lengthX=productsX.length; 
    var itemProductX; 
 
    if (lengthX==0){ 
      alert('No seas pedorro que no hay productos'); 
      return; 
    }; 
 
    dwr.util.setValue("serviceResponse", responseX.errorDescription); 
 
    var id="00"; 
    for (var i=0 ; i<lengthX ; i++) 
        { 
           itemProductX= productsX[i]; 
           id="00"+i; 
           dwr.util.cloneNode("myPattern", { idSuffix:id }); 
           dwr.util.setValue("codePattern" + id, itemProductX.barCode); 
           dwr.util.setValue("namePattern" + id, itemProductX.name); 
           $('#myPattern' + id).css("display", "table-row");
        } 
}


// -------------------------------------------
// DWR Segundo Ejemplo

function init(){
	DWREngine.setErrorHandler(errors);
	update();
}

function errors(message) {
	alert("Errores "+message);
}

function update() {
	var provincia = DWRUtil.getValue("provincia");
	MunicipiosController.getMunicipios(provincia, createList);
}

function createList(data) { 
	DWRUtil.removeAllOptions("municipio", data);
	// como estamos cargando un select el "codigo" es el value y el "nombre" es la etiqueta (lo que se muestra)
	// como en este ejemplo <option value="VAL">Valencia</option>
	DWRUtil.addOptions("municipio", data, "codigo", "nombre");
	
}
	


